home *** CD-ROM | disk | FTP | other *** search
/ MacFormat UK 64 / MF_UK_64_1.iso / mac / Shareware Plus / Sound / bol-processor-280-data / BP2 examples / ANDREINE BEL / -gr.ShapesInRhythm < prev    next >
Encoding:
Text File  |  1997-10-19  |  10.3 KB  |  210 lines  |  [BP05/Bel0]

  1. // Bol Processor version BP2.7.3
  2. // Grammar file saved as '-gr.ShapesInRhythm'. Date: Sun, Oct 19, 1997 -- 10:09 AM
  3. -se.ShapesInRhythm
  4.  
  5. // This is "ShapesInRhythm", a grammar generating a single piece used for the performance of Cronos. It was composed by choreographer Andreine Bel. Part of the material is taken from kathak compositions.
  6. // The piece comprises 9 parts using very different sound "patches". It will not make  sense unless played on Roland D-50 with Musitronics extension card. I am sending it on audio cassette to registered users.
  7.  
  8. // Production and time-setting take 14mn on my old Mac IIci
  9. // but only 2mn 30s on a PowerBook 5300cs...
  10. // Needs about 4500 Kbytes RAM for program and data
  11. // Needs 30ms quantization, yielding K = 222 and 2536 sound-objects.
  12.  
  13. // At the time this grammar was created, BP2 did not support articulation nor glossary.  In fact, this grammar highlighted the need for such features.
  14.  
  15. // We used time patterns because the dancers wanted initial sections to be "a little slower". The composition starts at metronom 60 and continues at metronom 88.
  16.  
  17. // Consequently, time is smooth (type cmd-T to verify it).
  18.  
  19. // Revised 17/10/97 -- fixed new program numbers
  20.  
  21. TIMEPATTERNS:
  22. t1 = 88/60  t2 = 88/80  t3 = 1/1
  23. --------------------------
  24. ORD
  25.  
  26. GRAM#1[1] S --> Route _script(Beep) _script(Wait for space) Part1 Gap12 Part2 Gap23 Part3 Gap34 Part4 Gap45 Part5 Gap56 Part6 Gap67 Part7 Gap78 Part8 Gap89 Part9
  27.  
  28. GRAM#1[2] Part1 --> _script(Tick cycle OFF) Route - _vel(127) _script(Tick cycle ON) _script(Reset tick cycle) {Tp1 Tp1 Tp1 Tp1 Tp1 Tp1 Tp1 Tp1, P1} {Tp1,Accord5,sol4 15}
  29. GRAM#1[3] Part2 --> Sablier _vel(127) {Tp2 Tp2 Tp2 Tp2 Tp2, P2}{Tp3,Dha1 15}
  30. GRAM#1[4] Part3 --> Maison _vel(35) {Tp3 Tp3 Tp3 Tp3, P3}_vel(45){Tp3,Dha5}
  31. GRAM#1[5] Part4 --> Toit _vel(127){Tp3 Tp3 Tp3 Tp3 Tp3 Tp3, P4}
  32. GRAM#1[6] Part5 --> Drapeau _vel(70){Tp3 Tp3 Tp3 Tp3, P5}{Tp3,Chhe 15}
  33. GRAM#1[7] Part6 --> CerfVolant _vel(127){Tp3 Tp3 Tp3 Tp3, P6}{Tp3,Tin ---}
  34. GRAM#1[8] Part7 --> Guimbarde _vel(127){Tp3 Tp3 Tp3 Tp3, P7} PedalOn {Tp3,Dha4 15}
  35. GRAM#1[9] Part8 --> Hippocampe _vel(90){Tp3 Tp3 Tp3, P8}{Tp3,la5 31}
  36. GRAM#1[10] Part9 --> VaisseauVolant _vel(90) {Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 Tp3 t3 t3 t3 t3, P9}
  37.  
  38. GRAM#1[11] Gap12 -->  _vel(80) Conque {Tp2,- _pitchbend(0) _pitchcont _mod(0) _modcont si3_____ _mod(16383) _pitchbend(8192) Sablier -} _mod(0)
  39. GRAM#1[12] Gap23 --> Maison {Tp3,16,_vel(2) _velcont - fa3 _ _ mi3 fa#3 fa3 mi3 sol3 fa3 sol#3 do3 _ _ _ _  _vel(40)}
  40. GRAM#1[13] Gap34 -->  Toit _vel(100) {Tp3,- sol#2 sol#2 sol#2 }
  41. GRAM#1[14] Gap45 -->  Toit _vel(100) {Tp3 Tp3, - sol2 - sol2  sol2 - sol2 Drapeau -}
  42. GRAM#1[15] Gap56 -->  CerfVolant _vel(60) {Tp3,- {6,do4,- do5} -}[{Tp3,PedalOn _vel(50) _velcont do2 sol#2 fa#2 do#3 PedalOff - _vel(90)}]
  43. GRAM#1[16] Gap67 -->   Guimbarde {Tp3,{_vel(40) do3___,_vel(40) _velcont -fa3 fa3_ _vel(60), ---fa2}}
  44. GRAM#1[17] Gap78 --> {Tp3,7 PedalOff -}
  45. GRAM#1[18] Gap89 --> _vel(110) Michiko {Tp3, - PedalOn _press(0) _presscont _pitchbend(8192) _pitchcont re5______ _press(127) _pitchbend(12000) - PedalOff}_pitchbend(8192)_press(0)
  46. // Here we used the real values of pitchbend. Usually it is easier to use cent values (see "-da.checkControls") but this wasn't yet implemented.
  47. ------------------
  48. SUB1
  49. GRAM#2[1] P1 --> {16,8 Vi4,Accord1} {16,{8,So8} {8,Ar12},Accord2} {16,{8,Sm16}{8,Su24}} {16,{8,Ol32}{8,An48}}
  50. GRAM#2[2] Accord1 --> do2
  51. GRAM#2[3] Accord2 --> do2
  52. GRAM#2[4] Accord5 --> do2
  53. ------------------
  54. SUB1
  55. GRAM#3[1] P2 --> Down12345 S5 Up12345 S5 Down12345 S5 Up12345 S5 Down12345 S3 Up12345 S3 Down12345 S3 Up12345 S3 Down12345 - Up12345 - Down12345 - Up12345 - Down12345 Up12345 Down12345 Up12345 Dha1 - Down12345 Up12345 Down12345 Up12345 Dha1 - Down12345 Up12345 Down12345 Up12345
  56. GRAM#3[2] Down12345 --> si5 sol5 fa#5 mi5 re#5  
  57. GRAM#3[3] Up12345 --> si4 re#5 mi5 fa#5 sol5  
  58. GRAM#3[4] S5 --> -----
  59. GRAM#3[5] S3 --> --- 
  60. ------------------
  61. SUB1
  62. GRAM#4[1]  P3 --> P3T1 Dha3 P3T2 Dha4 {P3T1,P3T3}
  63.  
  64. GRAM#4[2] P3T1 --> {3,do4 do5 do3 do3 do3 do3} {3, do#3 re3 la3 la#4 sol3 sol#4 do#4 do5 do3}{3,do#3 fa3 re#4 la#4 fa#3 sol4 mi4 la4 la#3 do5 re3 fa#3}{1,sol4 fa4}
  65. GRAM#4[3] Dha3 --> sol#4
  66. GRAM#4[4] P3T2 --> {3,do#4 do5 do#3 fa3 mi4 la4} {3,si3 do5 do3 do#3 re#3 si3 do5 do#3 re3}{3,sol#3 la#4 sol#3 la4 la#3 si4 re3 sol#3 la#4 sol#3 la#4 sol#3}{1,la#4 la4}
  67. GRAM#4[5] Dha4 --> do5
  68. GRAM#4[6] P3T3 --> {3,sol#3 la4 la#3 do5 re3 fa#3} {3,fa#4 fa4 sol4 re#4 do5 fa#3 fa#4 la4 do4}{3,do5 do3 do3 re#3 re#4 do5 re#3 do4 do5 do3 re#3 do4}{1,do5 do3}
  69. GRAM#4[7] Dha5 --> sol#4
  70. ------------------
  71. SUB1
  72. GRAM#5[1] P4 --> {12,Trio Trio Trio Trio} {12,Trio Trio Trio Trio,Quatuor Quatuor Quatuor Quatuor} {24,Trio Trio Trio Trio Trio Trio Trio Trio,Quatuor Quatuor Quatuor Quatuor Quatuor Quatuor Quatuor Quatuor,OlSeul32}
  73. GRAM#5[2] Trio --> {1,Sm,An,So} Tik Tik
  74. GRAM#5[3] Quatuor --> {1,Ar,Ol,Su,Vi} {1,mi6---,do6---}
  75. GRAM#5[4] OlSeul32 --> OlSeul4 OlSeul4 OlSeul4 OlSeul4 OlSeul4 OlSeul4 OlSeul4 OlSeul4
  76. GRAM#5[5] OlSeul4 --> Ol Ol Ol Ol
  77. -------------------
  78. SUB1
  79. GRAM#6[1] P5 --> {Tick32,Tihai5 Chhe Tihai5 Chhe Tihai5}
  80. GRAM#6[2] Tihai5 --> {4,Cinq2 Chhe Cinq2 Chhe} {6,Cinq2 Cinq2 Cinq2}
  81. -------------------
  82. SUB1
  83. GRAM#7[1] P6 --> {Tick32,Tihai6 Tin Tihai6 Tin Tihai6}
  84. GRAM#7[2] Tihai6 --> {2,Huit}{2,Six}{2,Cinq}{2,Quatre}{2,- - Ek - - Do - -}
  85. -------------------
  86. SUB1
  87. GRAM#8[1] P7 --> {Tick32,Tihai7 Dha4 Tihai7 Dha4 Tihai7}
  88. GRAM#8[2] Tihai7 --> {2,Huit2}{2,Sept2}{2,Six2}{2,Cinq2}{2,Quatre2}
  89. -------------------
  90. SUB1
  91. GRAM#9[1] P8 --> Tihai8 Gap8 Tihai8 Gap8 Tihai8
  92. GRAM#9[2] Tihai8 --> {fa4,do5} - fa5 do6 la5 la#5 sol5 do6 la5 - {fa4,do5} fa5 - do6 la5 la#5 sol5 do6 la5 - {fa4,do5} fa5 do6 - la5 la#5 sol5 do6 
  93. GRAM#9[3] Gap8 --> la5 - - - - -
  94. -------------------
  95. SUB1
  96. GRAM#10[1] P9 --> {M1 M1 M1 M1 M2 M2 M2 M2 M2 M2 M2 M2  M3 M3 M3 M3 M3 M3 M3 M3  M4 M4 M4 M4 M4 M4 M4 M4  M5 M5 M5 M5 M5 M5 M5 M5  M6 M6 M6 M6 M6 M6 M6 M6,_vel(10){re3,mi3,fa3}}
  97. GRAM#10[2] M1 --> Smriti
  98. GRAM#10[3] M2 --> {Smriti,Olivier}
  99. GRAM#10[4] M3 --> {Smriti,Olivier,Vijayshree}
  100. GRAM#10[5] M4 --> {Smriti,Olivier,Vijayshree,Arindam}
  101. GRAM#10[6] M5 --> {Smriti,Olivier,Vijayshree,Arindam,Somenath}
  102. GRAM#10[7] M6 --> {Smriti,Olivier,Vijayshree,Arindam,Somenath,_vel(127) Suresh}
  103. ------------------
  104. ORD [Using time patterns]
  105. GRAM#11[1] Tp1 --> t1 t1 t1 t1 t1 t1 t1 t1
  106. GRAM#11[2] Tp2 --> t2 t2 t2 t2 t2 t2 t2 t2
  107. GRAM#11[3] Tp3 --> t3 t3 t3 t3 t3 t3 t3 t3
  108. ---------------------------
  109. SUB1
  110. GRAM#12[1] Vi4 --> {4,Vi1 Vi1 Vi1 Vi1}
  111. GRAM#12[2] So8 --> {8,So1 So1 So1 So1 So1 So1 So1 So1}
  112. GRAM#12[3] Ar12 --> {12,Ar1 Ar1 Ar1 Ar1 Ar1 Ar1 Ar1 Ar1 Ar1 Ar1 Ar1 Ar1}
  113. GRAM#12[4] Sm16 --> {16,Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1 Sm1}
  114. GRAM#12[5] Su24 --> {24,Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1 Su1}
  115. GRAM#12[6] Ol32 --> {32, Ol4 Ol4 Ol4 Ol4 Ol4 Ol4 Ol4 Ol4}
  116. GRAM#12[7] An48 --> An16 An16 An16 
  117. GRAM#12[8] An16 --> An4 An4 An4 An4
  118. GRAM#12[9] An4 --> {4, An1 An1 An1 An1}
  119. GRAM#12[10] Ol4 --> Ol1 Ol1 Ol1 Ol1
  120. GRAM#12[11] Vi1 --> fa3 -
  121. GRAM#12[12] So1 --> {mi3,fa#3} -
  122. GRAM#12[13] Ar1 --> {sol3,la#3} -
  123. GRAM#12[14] Sm1 --> do4 -
  124. GRAM#12[15] Su1 --> {do#4,fa4} -
  125. GRAM#12[16]  Ol1 --> sol3 -
  126. GRAM#12[17] An1 --> sol4 -
  127. --------------------
  128. SUB1
  129. GRAM#13[1] Smriti --> {3,Sm Sm Sm}
  130. GRAM#13[2] Olivier --> {5,Ol Ol Ol Ol Ol}
  131. GRAM#13[3] Vijayshree --> {2,Vi Vi}
  132. GRAM#13[4] Arindam --> {4,Ar Ar Ar Ar}
  133. GRAM#13[5] Somenath --> {6,So So So So So So}
  134. GRAM#13[6] Suresh --> {12,Su Su Su Su Su Su Su Su Su Su Su Su}
  135. ----------------------------
  136. SUB1
  137. GRAM#14[1] Huit --> BigTik Tik Tik Tik Tik Tik Tik Tik
  138. GRAM#14[2] Six --> BigTik Tik Tik Tik Tik Tik
  139. GRAM#14[3] Cinq --> BigTik Tik Tik Tik Tik
  140. GRAM#14[4] Cinq2 --> BigTik Tik3 Tik3 Tik3 Tik3
  141. GRAM#14[5] Quatre --> BigTik Tik Tik Tik
  142. GRAM#14[6] Huit2 --> BigTik2 Tik2 Tik2 Tik2 Tik2 Tik2 Tik2 Tik2
  143. GRAM#14[7] Sept2 --> BigTik2 Tik2 Tik2 Tik2 Tik2 Tik2 Tik2
  144. GRAM#14[8] Six2 --> BigTik2 Tik2 Tik2 Tik2 Tik2 Tik2
  145. GRAM#14[9] Cinq2 --> BigTik2 Tik2 Tik2 Tik2 Tik2
  146. GRAM#14[10] Quatre2 --> BigTik2 Tik2 Tik2 Tik2
  147. GRAM#14[11] Ek --> Tik
  148. GRAM#14[12] Do --> Tik
  149. GRAM#14[13] Tin --> Tik
  150. GRAM#14[14] Chhe --> BigTik
  151. ------------
  152. SUB1
  153. // The eight following rules are typical cases in which _staccato() should be used.
  154. GRAM#15[1] Dha1 --> {1,{si3,si4}---}
  155. GRAM#15[2] Su --> do6---
  156. GRAM#15[3] Sm --> fa5---
  157. GRAM#15[4] Ol --> mi6---
  158. GRAM#15[5] So --> la5---
  159. GRAM#15[6] Vi --> re6-
  160. GRAM#15[7] Ar --> mi5---
  161. GRAM#15[8] An --> fa6---
  162. GRAM#15[9] Dha4 --> {fa2,do4}
  163. GRAM#15[10] Tick32 --> _vel(40) do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3 do3
  164. GRAM#15[11] Tik --> do7
  165. GRAM#15[12] Tik2 --> {do5,do6}
  166. GRAM#15[13] Tik3 --> {_vel(15) sol6,_vel(110) do7}
  167. GRAM#15[14] BigTik  --> {do6,do8}
  168. GRAM#15[15] BigTik2 --> {fa3,fa4}
  169. ------------
  170. SUB1
  171. GRAM#16[1] Route --> X87
  172. GRAM#16[2] Sablier --> X76
  173. GRAM#16[3]  Maison --> C13
  174. GRAM#16[4] Toit --> X76
  175. GRAM#16[5] Drapeau --> X36
  176. GRAM#16[6] CerfVolant --> X63
  177. GRAM#16[7] Guimbarde --> X86
  178. GRAM#16[8] Hippocampe --> X72
  179. GRAM#16[9] VaisseauVolant --> X36
  180. GRAM#16[10] Conque --> I66
  181. GRAM#16[11] Michiko --> X75
  182. ------------
  183. ORD
  184. [D-50 stuff]
  185. GRAM#17[1] Xcard --> _script(MIDI controller #98 = 1 channel 1)
  186. GRAM#17[2] Internal --> _script(MIDI controller #98 = 0 channel 1)
  187. GRAM#17[3] X13 --> Xcard _script(MIDI program 5)
  188. GRAM#17[4] X24 --> Xcard _script(MIDI program 12) 
  189. GRAM#17[5] X26 --> Xcard _script(MIDI program 14)
  190. GRAM#17[6] X27 --> Xcard _script(MIDI program 15) 
  191. GRAM#17[7] X36 --> Xcard _script(MIDI program 22)
  192. GRAM#17[8] X63 --> Xcard  _script(MIDI program 43)
  193. GRAM#17[9] X68 --> Xcard _script(MIDI program 48) 
  194. GRAM#17[10] X72 --> Xcard _script(MIDI program 50)
  195. GRAM#17[11] X75 --> Xcard _script(MIDI program 53)
  196. GRAM#17[12] X76 --> Xcard _script(MIDI program 54)
  197. GRAM#17[13] X83 --> Xcard _script(MIDI program 59)
  198. GRAM#17[14] X85 --> Xcard _script(MIDI program 61)
  199. GRAM#17[15] X86 --> Xcard _script(MIDI program 62)
  200. GRAM#17[16] X87 --> Xcard _script(MIDI program 63)
  201. GRAM#17[17] I42 --> Internal _script(MIDI program 26)
  202. GRAM#17[18] I62 --> Internal _script(MIDI program 42)
  203. GRAM#17[19] I66 --> Internal _script(MIDI program 46)
  204. GRAM#17[20] C13 --> Internal _script(MIDI program 67)
  205. GRAM#17[21] C42 --> Internal _script(MIDI program 90)
  206. GRAM#17[22] C56 --> Internal _script(MIDI program 102)
  207. GRAM#17[23] C23 --> Internal _script(MIDI program 75)
  208. GRAM#17[24] PedalOn --> _switchon(64,1)
  209. GRAM#17[25] PedalOff --> _switchoff(64,1)
  210. // -------------------------------------------------------+